#pragma once

//-----------------------------------------------------------
//用于记录长度的类型。
typedef int length_t;
//最大线程数
#define THREADS_NO 100

//用于数据结点中记录区域长度的类型。
typedef length_t lengthField_t;
//用于数据结点中记录数据域长度的类型。
typedef length_t lengthDataField_t;
//用于数据结点中记录指针域长度的类型。
typedef length_t lengthPointerField_t;

//C语言缓存字符串的数据域长度。
//#define CCAS_LENGTH 2

//图像的尺寸类型。
typedef length_t graphsize_t;
//用于存储位置信息的类型。
typedef length_t position_t;


#include<stdint.h>
//像素点类型。
typedef uint32_t pixel_t;

//-----------------------------------------------------------
//标识符类型。
typedef int identifier_t;

//返回的错误处理类型。
typedef identifier_t error_t;

#define CCA_OK        0
#define CCA_ERROR     1
#define CCA_FALSE     0
#define CCA_TRUE      1
#define CCA_NOTFOUND -1

//------------------------------------
//用于存放状态信息的类型。
/*
typedef identifier_t status_t;

#define PPT_SHUT -1
#define PPT_STOP 0
#define PPT_START 1
#define PPT_RUNNING 2
*/
enum status
{
    SSHUT    = -1,
    SSTOP    = 0,
    SSTART   = 1,
    SRUNNING = 2
};

//用于存放设备标识符的类型。
typedef identifier_t device_t;
//用于存放键盘事件标识符的类型。
typedef identifier_t kbcode_t;

//用于存放套接字标识符的类型。
typedef device_t socket_t;

//-----------------------------------------------------------

//用于存放内存的类型。
typedef void* memory_t;
//缓冲区类型。
typedef memory_t buffer_t;

//用于共享数据的通道类型。
typedef buffer_t passagw_t; 

//用于链表结点的域类型。
typedef buffer_t field_t;
//用于链表结点的数据域类型。
typedef field_t dataField_t;
//用于链表结点的指针域类型。
typedef field_t pointerField_t;

//-----------------------------------------------------------
//-----------------------------------------------------------
